home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CU Amiga Super CD-ROM 21
/
CU Amiga Magazine's Super CD-ROM 21 (1998)(EMAP Images)(GB)[!][issue 1998-04].iso
/
CUCD
/
Programming
/
RTGMaster
/
demos
/
moon
/
mul_and_div.a
< prev
next >
Wrap
Text File
|
1996-10-12
|
2KB
|
79 lines
XDEF _mul_and_div
XDEF _dot_product
XDEF _rotate
XDEF _copy
section text,code
_mul_and_div:
fmove.l d0,fp0
fmove.l d1,fp1
fmul.x fp0,fp1 ; .x und NICHT .l
fdiv.l d2,fp1 ; .l und NICHT .x
fmove.l fp1,d0
rts
_dot_product:
fmove.l d0,fp0
fmove.l d1,fp1
fmove.l d2,fp2
fmove.l d3,fp3
fmul.x fp0,fp2
fmul.x fp1,fp3
fadd.x fp2,fp3
fdiv.l #65536,fp3
fmove.l fp3,d0
rts
_rotate:
move.l d2,-(sp)
fmove.l d0,fp0
fmove.l d1,fp1
move.l (a1),d2
fmove.l (a0),fp2
fmove.l (a1),fp3
fmul.x fp0,fp2
fmul.x fp1,fp3
fadd.x fp2,fp3
fdiv.l #65536,fp3
fmove.l fp3,(a1)
move.l d1,d4
sub.l d1,d1
sub.l d0,d1
move.l d4,d0
fmove.l d0,fp0
fmove.l d1,fp1
fmove.l (a0),fp2
fmove.l d2,fp3
fmul.x fp0,fp2
fmul.x fp1,fp3
fadd.x fp2,fp3
fdiv.l #65536,fp3
fmove.l fp3,(a0)
move.l (sp)+,d2
rts
_copy:
movem.l a2/d2-d4,-(sp)
move.l #copyl,a2
add.l d0,a2
move.l (a2),a2
jmp (a2)
copy0:
move.l #3999,d0
loop:
move.l (a0)+,d1
move.l (a0)+,d2
move.l (a0)+,d3
move.l (a0)+,d4
move.l d1,(a1)+
move.l d2,(a1)+
move.l d3,(a1)+
move.l d4,(a1)+
dbra d0,loop
movem.l (sp)+,a2/d2-d4
rts
copyl:
dc.l copy0
END